
        <html>
			<head>
			     <title>电商网站的安全性 - 瞌睡龙</title>
				 <meta http-equiv="content-type" content="text/html; charset=UTF-8">
			</head>
			<body>
				<h1>原文地址:<a href="http://drops.wooyun.org/papers/741">http://drops.wooyun.org/papers/741</a></h1>
				
      <p>
        <h2>0x00 背景</h2>

<hr />

<p>电商网站由于是直接涉及到金钱的交易，对其本身的安全性要求很高。</p>

<p>这样才能保证普通网民在其网站做金钱交易的时候，不会发生安全问题。</p>

<p>双11刚过，看着那一个一个突破以往的数字，让人惊叹网购的力量。</p>

<p>但是这背后，可能存在哪些安全性的问题呢？</p>

<p>普通网民在网购的时候应该注意些什么呢？</p>

<p>从国业内影响力最大的漏洞报告平台wooyun上来看一下吧（拿淘宝，京东，苏宁做例子做个统计。）。</p>

<!--more-->

<h2>0x01 细节</h2>

<hr />

<h3>淘宝</h3>

<p>淘宝号称亚洲最大、最安全的网上交易平台。</p>

<p>双11最耀眼的网购平台，taobao在wooyun上被提交的漏洞，在电商上算得上是最多的。</p>

<p>或许是树大招风吧，对其感兴趣的白帽子也很多，所以导致平台上taobao的漏洞多于其他电商。</p>

<p>但是国内电商平台本身的安全性来讲，我相信淘宝其平台本身肯定是最好的。</p>

<p>来看一下淘宝网的漏洞统计：</p>

<h4>xss漏洞</h4>

<p>关于xss漏洞是指攻击者可在对方网站插入自己可供的一段js代码，从而控制浏览者的浏览器的部分权限。</p>

<p>xss的危害通常在sns社区中显现出来，有人会拿来做恶作剧、做蠕虫，对用户形成骚扰，产生垃圾信息。</p>

<p>有人会拿来诱惑用户点击攻击链接，从而盗取用户身份。</p>

<p>在网购平台上来讲，最大的利用当属钓鱼购物，这种可以直接转化为利益的攻击方式：</p>

<p>从wooyun上的一个案例中可窥探一下针对taobao做黑产的一角：</p>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2010-01003">WooYun: Taobao站内有Xss蠕虫蔓延</a> </p>

<p>几个含金量很高的xss技巧：</p>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2011-01608">WooYun: 淘宝网utf-7代码注入跨站漏洞</a> </p>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2012-07085">WooYun: 淘宝网COOKIES盗取[flash编程安全+apache http-only cookie 泄漏利用]</a> </p>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2013-019556">WooYun: 淘宝主域名下多处Dom XSS</a> </p>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2013-040838">WooYun: 一个flash的0day导致的淘宝网存储xss 【续集】</a> </p>

<h4>url跳转</h4>

<p>url跳转漏洞的介绍见此：</p>

<p><a href="http://drops.wooyun.org/papers/58">http://drops.wooyun.org/papers/58</a></p>

<p>url跳转同样是经常被用来钓鱼。</p>

<p>通过跳转绕过阿里旺旺的钓鱼网址检测系统：</p>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2012-010837">WooYun: 淘宝网钓鱼最新过旺提示（淘宝钓鱼的福音）</a> </p>

<h4>钓鱼的其他手段</h4>

<p>在厂商已经把安全性做了很好的前提下，仍然不能保证网民一定不会被钓鱼。</p>

<p>下面看看一些其他的钓鱼手段：</p>

<p>钓鱼淘宝卖家，收集密码的后台被白帽子拿下上报wooyun</p>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2013-034374">WooYun: 淘宝卖家遭钓鱼大量店长中招（钓鱼后台揭秘）</a> </p>

<p>这个style使用的让人眼前一亮：</p>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2011-01261">WooYun: 淘宝网一处另类钓鱼</a> </p>

<h4>程序设计缺陷</h4>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2013-037073">WooYun: 淘宝第三方应用权限验证错误(可修改19.8万店铺任意宝贝标题)</a> </p>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2013-041388">WooYun: 来往导致淘宝账号可被破解波及余额宝支付宝</a> </p>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2013-017601">WooYun: 天猫积分支付缺乏二次验证（本人已被盗）</a> </p>

<p>修改ccs样式修改商品的信息，人才啊：</p>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2012-014174">WooYun: 利用css淘宝网商品信息任意修改</a> </p>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2012-013794">WooYun: 手机淘宝网session劫持，可进一步发展为蠕虫</a> </p>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2012-011104">WooYun: 淘网址sina oauth认证登录漏洞</a> </p>

<p>这种支付的漏洞，真没想到taobao也会有：</p>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2012-07293">WooYun: 淘宝网某处存在严重支付漏洞</a> </p>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2012-04163">WooYun: 淘宝网，任何人可随意拿走任意店铺、任意商品信息</a> </p>

<h4>业务逻辑</h4>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2012-011908">WooYun: 淘宝应用钓鱼</a> </p>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2012-06383">WooYun: 淘宝卖家0元加入消保，并且点亮消保图标，不用话1000元了</a> </p>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2011-01940">WooYun: 淘宝货到付款骗局</a> </p>

<h4>客户端问题</h4>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2013-033412">WooYun: 阿里旺旺的一个远程任意代码执行漏洞（发送消息即中）</a> </p>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2013-025715">WooYun: 淘宝浏览器3.0.2.604修改配置可能导致本地的DLL注入</a> </p>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2012-07876">WooYun: 淘宝应用iphone设计缺陷可无限制猜试密码</a> </p>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2011-02259">WooYun: 淘宝android手机客户端登陆信息可被键盘记录</a> </p>

<h4>服务器配置问题</h4>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2012-012665">WooYun: 淘宝网某应用svn信息导致代码泄露</a> </p>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2012-05677">WooYun: 淘宝某分站存在nginx解析漏洞</a> </p>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2011-03801">WooYun: 阿里旺旺域名列目录</a> </p>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2010-0776">WooYun: 淘宝网dns域传送泄露漏洞</a> </p>

<h4>信息泄露</h4>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2013-026521">WooYun: 淘宝店铺匿名评论简单获得匿名买家ID</a> </p>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2013-024137">WooYun: 淘宝solr暴露在外网</a> </p>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2013-024136">WooYun: 淘宝网Minebdb系统未做权限认证</a> </p>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2012-015627">WooYun: (新) 淘宝网成交记录用户ID泄露漏洞(附上扫号程序)</a> </p>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2012-014004">WooYun: 淘宝网成交记录用户ID泄露漏洞</a> </p>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2012-09363">WooYun: 淘宝某系统未授权访问及目录浏览</a> </p>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2012-07917">WooYun: 淘宝首页爆出绝对路径</a> </p>

<p>能猜到这个地址，我只想说，人才：</p>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2012-03924">WooYun: 淘宝某分站存在cookie泄漏问题</a> </p>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2012-04515">WooYun: 淘宝后台两枚</a> </p>

<h4>web程序其他漏洞</h4>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2012-07867">WooYun: 淘测试某两处盲注</a> </p>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2013-020575">WooYun: 淘测试多处SQL注入及任意文件上传BUG</a> </p>

<p>struts惹的祸：</p>

<p>struts这个框架近几年被爆多次远程代码执行漏洞，导致很多使用改框架的公司受害：</p>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2012-011636">WooYun: 疑似淘宝内部某业务命令执行</a> </p>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2013-029160">WooYun: 淘宝某分站最新Struts命令执行漏洞一枚</a> </p>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2013-029215">WooYun: 淘宝某业务存在命令执行</a> </p>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2013-029312">WooYun: 淘宝某分站最新Struts命令执行漏洞又一枚</a> </p>

<h4>其他</h4>

<p>即使平台本身没有问题，也会有人做各种钓鱼的页面，采用各种手段来骗取网购用户在其制作的假网站中消费，骗取钱财。</p>

<p>针对taobao的钓鱼程序：</p>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2010-0938">WooYun: 一套淘宝钓鱼程序</a> </p>

<p>针对钓鱼网址taobao的确比较难直接将其关闭，但是也做了很多措施。</p>

<p>如下面白帽子提交漏洞：</p>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2010-0938">WooYun: 一套淘宝钓鱼程序</a> </p>

<p>下面的taobao厂商的回复：</p>

<pre><code>感谢反馈。
这类问题不在淘宝控制范围内，我们没办法限制他的产生，但一直在尽力控制钓鱼链接对用户产生的危害：
1. 我们会在旺旺聊天信息中提示风险，同时建议用户不在旺旺以外的IM软件中谈淘宝相关的交易。
2. 我们会对IM旺旺和会员反馈进行监控，结合各类检测模型，尽量在第一时间发现新产生的钓鱼链接，在IM中进行封禁。
3. 我们积极与外部厂商（浏览器、杀毒软件、安全管理软件等）合作，将钓鱼链接信息同步，起到更好的保护作用。
4. 我们将马上上线一个钓鱼链接在线举报平台，欢迎各位积极举报。
</code></pre>

<p>例如最近被公开很火的针对路由使用默认密码</p>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2013-042571">WooYun: 双十一淘宝论坛惊现“路由器CSRF”恶意攻击代码（其他论坛可能一样中招）</a> </p>

<h4>淘宝总结</h4>

<p>以上漏洞并未列出全部的漏洞，提了一些比较典型的问题。</p>

<p>淘宝业务较多，逻辑复杂，出现了struts命令执行等获得服务器的漏洞，以及泄露匿名用户信息，支付漏洞以及xss，url跳转可被钓鱼的漏洞等。</p>

<h3>京东</h3>

<p>京东商城-专业的数码网上购物商城</p>

<p>由于京东线上业务逻辑远没有淘宝那么复杂，所以漏洞总数在wooyun上并不如taobao多。</p>

<p>但是漏洞的严重程度，远大于taobao。</p>

<p>从漏洞的忽略程度来看，京东12年的时候可能刚组建专门的安全团队。</p>

<p>对安全问题逐渐重视。</p>

<p>xss也有很多，就不一一列举了</p>

<h4>安全事件</h4>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2011-03184">WooYun: 360buy京东商城内部网络被渗透</a> </p>

<h4>程序逻辑</h4>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2013-028267">WooYun: 京东物流后台未授权访问可以修改收货状态（刷返券）</a> </p>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2013-028143">WooYun: 京东某系统页面未授权可查询任意订单配送状态</a> </p>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2011-03789">WooYun: 京东商城用户资料完全泄漏</a> </p>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2011-03501">WooYun: 京东商城&lt;39元商品不交运费</a> </p>

<h4>URL跳转</h4>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2011-03422">WooYun: 京东商城跳转漏洞（严重</a> </p>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2011-03407">WooYun: 京东商城分站存在跳转漏洞</a> </p>

<h4>信息泄露</h4>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2011-02196">WooYun: 京东敏感信息泄露</a> </p>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2011-02361">WooYun: 京东商城主站存在信息泄漏洞</a> </p>

<h4>客户端问题</h4>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2013-041514">WooYun: 京东商城android客户端缺陷导致欺骗</a> </p>

<h4>SQL注入</h4>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2011-03901">WooYun: 京东团购网SQL注射，可获取用户信息。</a> </p>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2011-03298">WooYun: 京东商场某分站SQL注射</a> </p>

<h4>struts</h4>

<p>京东从.net转向java，使用的struts，被坑惨了：</p>

<p><img src="http://static.wooyun.org/20140714/2014071406202862238.jpg" alt="enter image description here" /></p>

<h4>服务器配置</h4>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2012-05908">WooYun: 京东奢侈品商城解析漏洞</a> </p>

<h4>逻辑问题</h4>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2013-041321">WooYun: 京东某活动逻辑缺陷导致可刷京豆</a> </p>

<p>其实一个公司对安全的重视程度怎么样，从下面这个漏洞就可以基本看出个大概。</p>

<p>该漏洞详情还未完全公开，核心白帽子可以查看：</p>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2013-041105">WooYun: 大公司诟病系列#1 重置京东任意用户密码</a> </p>

<h4>京东总结</h4>

<p>总体来说存在的安全问题大大小小也不少，但是相对于以前，已经对安全重视很多。</p>

<p>希望京东内部能够更加重视安全，毕竟做电商的，用户金钱有了损伤还是很严重的。</p>

<h3>苏宁易购</h3>

<p>苏宁易购，是苏宁电器集团的新一代B2C网上商城，于2009年8月18日上线试运营。2010年1月25日，苏宁电器在南京总部宣布，公司的B2C网购平台“苏宁易购”将于2月1日正式上线，并将自主采购、独立运营，苏宁电器也由此正式出手电子商务B-t-C领域。</p>

<h4>sql注入</h4>

<p>嗯。。。sql注入也会有这么多：</p>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2013-040427">WooYun: 苏宁某分站存在sql注入漏洞</a> </p>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2013-039598">WooYun: 苏宁官网建党工作SQL注入漏洞</a> </p>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2013-037257">WooYun: 苏宁某站点SQL注入漏洞</a> </p>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2013-037155">WooYun: 苏宁某系统登录处SQL注射漏洞</a> </p>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2013-034756">WooYun: 苏宁一处SQL注入 Root权限</a> </p>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2013-034664">WooYun: 苏宁易购某分站SA权限SQL注入，可shell可渗透</a> </p>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2013-024916">WooYun: 苏宁某站点SQL注射</a> </p>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2013-022499">WooYun: 苏宁某二级配置错误大量信息泄露+SQL注射</a> </p>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2013-018897">WooYun:  苏宁某注册接口SQL盲注漏洞+XSS</a> </p>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2012-012278">WooYun: 苏宁易购某分站盲注</a> </p>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2012-010082">WooYun: 苏宁易购某DB2盲注</a> </p>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2012-09176">WooYun: 苏宁易购某分站注谢可得到用户联系方式等重要信息</a> </p>

<h4>程序逻辑</h4>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2013-039802">WooYun: 苏宁易购某云产品缺陷可造成他人信息泄露</a> </p>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2013-038641">WooYun: 苏宁易购某站越权操作及缺陷</a> </p>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2012-011132">WooYun: 苏宁易购的半个支付漏洞</a> </p>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2012-010561">WooYun: 再爆苏宁某站点重大漏洞</a> </p>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2012-08595">WooYun: 苏宁易购电话充值信息泄露</a> </p>

<h3>比较严重的问题</h3>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2013-041586">WooYun: 苏宁某分站弱口令可控189万用户信息</a> </p>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2013-027545">WooYun: 苏宁某分站存在可被入侵风险（机房内网可被渗透）</a> </p>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2013-027603">WooYun: 苏宁某子站任意密码修改</a> </p>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2013-018202">WooYun: 苏宁易购的几个严重安全漏洞合集（任意文件读取，任意命令执行）</a> </p>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2013-026047">WooYun: 苏宁漏洞大礼包一份 （Shell+跨盘任意下载+内部平台数据库+上万份内部文件任意浏览...）</a> </p>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2012-010280">WooYun: 苏宁某站点服务器沦陷</a> </p>

<p>支付漏洞</p>

<p> <a target="_blank" href="http://www.wooyun.org/bugs/wooyun-2012-010351">WooYun: 苏宁某站点存在严重漏洞</a> </p>

<h3>苏宁易购总结</h3>

<p>苏宁易购不太清楚是否有自己的安全团队，其安全性做的一般，大小问题不少，希望再接再厉：）</p>

<h2>0x02 总结</h2>

<hr />

<p>从乌云的平台上可以看到，大如淘宝的电商平台，拥有专业的安全团队，但是由于业务过多，依然可能存在可被获取服务器权限的漏洞。</p>

<p>其他电商网站有的刚配上专业的安全团队，有的可能对安全的重视程度还未达到需要配专业安全团队的地步，但大都在努力保证其安全性。</p>

<p>包括淘宝等一些互联网公司也在努力对网民做钓鱼的防范意识教育，全面的保证网民在网购上的安全性。</p>

<p>希望各电商能与白帽子共同努力，打造一个安全的电商平台。：）</p>      </p>
    
			</body>
		</html>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          